package com.hengpeng.itfinoss.service.user;

import java.util.List;

import com.hengpeng.common.exception.ServiceResult;
import com.hengpeng.common.persist.query.model.Order.OrderType;
import com.hengpeng.itfinbase.persist.UserInfo;
import com.hengpeng.itfinbase.persist.UserInfo.UserInfoType;

public interface UserInfoService {
    public ServiceResult<List<UserInfo>> selectUserPage(String userName, String mobile, UserInfoType type,
            String cardNumber, String trustAccountId, int indexPage, int pageSize, OrderType order, String orderField);

    /**
     * <pre>
     * 获取担保用户
     * </pre>
     * 
     * @return
     */
    public List<UserInfo> getGuartors();

    /**
     * <pre>
     * 通过主键获取用户
     * </pre>
     * 
     * @param id
     * @return
     */
    public UserInfo getById(Long id);

    /**
     * <pre>
     * 通过用户名获取会员信息
     * </pre>
     * 
     * @param userName
     * @return
     */
    public UserInfo getByUserName(String userName);

    /**
     * 修改用户类型
     * 
     * @param type
     * @param id
     * @return
     */
    public UserInfo modify(String type, Long id);
    /**
     * 根据类型查询用户
     * @param type
     * @return
     */
    public List<UserInfo> findUserInfoByType(UserInfoType type);

}
